Messaging

ABSTRACT

A device for transmitting a message for reception by another device, comprising: a processor for adding location information to the message, before transmission, wherein the location information identifies an area within which the message is to be hosted for reception by the other device; and a transmitter for transmitting the message, with the location information.

TECHNICAL FIELD

Embodiments of the present invention relate to messaging. In particular,they relate to depositing electronic messages at particular locationsfor later retrieved by another person.

BACKGROUND OF THE INVENTION

It has been possible to drop physical messages at certain locations sothat they can be picked up later by another person. For example, somerailway stations provide message boards on which messages can bewritten.

It would be desirable to be able to deposit an electronic message at aparticular location so that it can be retrieved later by another person.

It would be preferred if this could be achieved without investing inpermanent infrastructure at specific locations.

BRIEF SUMMARY OF THE INVENTION

According to one aspect of the present invention there is provided adevice for transmitting a message for reception by another device,comprising: a processor for adding location information to the message,before transmission, wherein the location information identifies an areawithin which the message is to be hosted for reception by the otherdevice; and a transmitter for transmitting the message, with thelocation information.

According to another aspect of the present invention there is provided amethod of locating a message within a particular area comprising thesteps of: adding location information to a message, before transmission,identifying the area within which the message is to be hosted; andtransmitting the message, with the location information.

According to a further aspect of the present invention there is provideda data structure for reception by a device and storage therein,comprising: a message portion and an information portion, wherein theinformation portion identifies an area within which the data structurewill be hosted by the device.

According to a still further aspect of the present invention there isprovided a device for receiving a message hosted as separate portions bya plurality of devices that are participating in an ad-hoc network andare located within an area identified by the message, comprising: atransmitter for broadcasting a request within the ad-hoc network; areceiver for receiving replies comprising portions of the message; and aprocessor for reproducing the message from the received portions.

According to another aspect of the present invention there is provided adevice for hosting a data structure comprising a portion of a messageand an information portion identifying an area while the device remainswithin that area, comprising: a memory for storing a data structurecomprising a message portion and an information portion, wherein theinformation portion identifies an area; positioning means fordetermining the location of the device; and a transmitter controllableto transmit the data structure to another device when the positioningmeans indicates that the device is no longer located within the area.

Thus in some embodiments of the invention geographically dependentinformation (a message) is stored in an ad hoc database the distributedcomponent parts of which may vary in time but the location of which issubstantially fixed.

BRIEF DESCRIPTION OF DRAWINGS

For a better understanding of the present invention and to understandhow the same may be brought into effect reference will now be made byway of example only to the accompanying figures in which:

FIG. 1 illustrates an ad-hoc radio network of mobile radio transceiverdevices;

FIG. 2 illustrates a mobile radio transceiver device suitable forparticipating in the network;

FIG. 3 illustrates a data structure including a portion of a message;

FIG. 4 a illustrates a process of depositing a private, locationdependent, message; and

FIG. 4 b illustrates a process of depositing a public, locationdependent, message.

DETAILED DESCRIPTION OF EMBODIMENT(S) OF THE INVENTION

FIG. 1 illustrates an ad-hoc radio network 2 of mobile radio transceiverdevices 10, 12, 14, 16. The network 2 may be a Bluetooth piconet orscatternet with the mobile radio transceiver devices operating as lowpower radio frequency transceivers over a range of tens of metres. Thenetwork may alternatively be some other type of local area radionetwork.

The network 2 occupies a geographical area A2 illustratively inscribedby the circular perimeter 7. It has a sub-network 4, within thegeographical area A1 inscribed by the circular perimeter 5. Thesub-network 4 includes the radio transceiver devices 10, 12 and 14. Theradio transceiver device 16 lies outside the area A1 and the sub-network4.

A first message M1 is made location dependent by associating it with ageographical area e.g. A1. The message is divided into portions and theseparate portions are stored only by some or all of the mobiletransceiver devices 10, 12 and 14 within the area A1. When a mobiletransceiver device leaves the area A1 then the portion(s) of M1 that itstores (if any) are transferred to one or more mobile transceiverdevices that are presently within the area A1. The message M1 istherefore distributed amongst a plurality of mobile transceiver devicespresently located within the area A1 and the identity of the pluralityof transceiver devices can change as mobile transceiver devices leaveand enter the area A1. The portions of the message M1 are thereforestored in a first adaptive database that comprises an ad-hoc network oftransceiver devices 10, 12, 14 that are distributed over an area A1associated with the message M1. The first database can be queried by amobile radio transceiver to retrieve the message M1.

A message M2 is made location dependent by associating it with ageographical area A2. The message is divided into portions and theseparate portions are stored only by some or all of the mobiletransceiver devices 10, 12, 14 and 16 within the area A2. When a mobiletransceiver device leaves the area A2 then the portion(s) of M2 that itstores (if any) are transferred to one or more mobile transceiverdevices that are presently within the area A2. The message M2 istherefore distributed amongst a plurality of mobile transceiver devicespresently located within the area A2 and the identity of the mobiletransceiver devices can change as transceiver devices leave and enterthe area A2. The portions of the message M2 are therefore stored in asecond adaptive database that comprises an ad-hoc network of transceiverdevices 10, 12, 14, 16 that are distributed over an area A2 associatedwith the message M2. The second database can be queried by a mobileradio transceiver to retrieve the message M1.

The transceivers 10, 12 and 14 located within both area A1 and A2 maystore, at the same time, a portion or portions of the messages M1 andM2.

FIG. 2 illustrates a mobile radio transceiver device 10 suitable forparticipating in the network 2. The radio transceivers 12, 14 and 16 ofFIG. 1 are similar. The radio transceiver device 10 comprises a radiofrequency transmitter 22 and a radio frequency receiver 24, a memory 30,a Man-Machine-Interface (MMI) 28, a GPS receiver 26, and a processor 20.The processor is connected to each of the other components. Theprocessor 20 is arranged to control the data transmitted by the radiofrequency transmitter 22. The processor 20 is arranged to receive datafrom the radio frequency receiver 24 that has been transmitted to thedevice 10 by another device participating in the network 2. The GPSreceiver 26 provides positioning data to the processor 20 thatidentifies the position of the radio transceiver device 10. The memory30 may be written to or read from by the processor 20. The MMI 28 isoperable to provide input data to the processor or to provide outputdata from the processor to the user of the device 10.

The mobile radio transceiver device 10 can be used to deposit a locationdependent message as multiple data structures in a distributed database,to operate as part of the distributed database storing a portion of alocation dependent message as a data structure or to retrieve thelocation dependent message from the distributed database where it isstored as multiple data structures.

FIG. 3 illustrates a data structure 40, which is used as the vehicle fordepositing, storing and retrieving portions of a message. The datastructure 40 comprises a target area header 42, an ID 44, a sequencenumber 46, and a message payload 48. The message payload 48 contains aportion of a message. The target header 42 comprises locationinformation that identifies the target area within which the datastructure is to be stored. The location information may define thetarget area as the centre and radius of a circle e.g. (centre, range).The ID is optional. It may be used for private messages to identify thedepositor of the message or the depositor's radio transceiver deviceand/or it may identify the intended recipient of the message or theintended recipient's radio transceiver device. The sequence number isdifferent for each message portion of the same message. It is used forreassembling the message in the correct order from the various messageportions. If encryption is used to secure the data structure 40, thetarget area header 42 and ID 44 are in the clear and the payload 48 isencrypted. The sequence number 46 is optionally encrypted.

The deposition of a private, location dependent message will now bedescribed with reference to FIG. 4 a. The steps occur within theprocessor 20 unless otherwise indicated.

The message is input at step 50. The user may for example enter themessage via the MMI 28 or it may be already stored in the memory 30. Themessage may be any type of message such as an alphanumeric text message,a picture, an audio file, a video clip or a similar multimedia message.

The message is redundantly encoded at step 54 before it is divided intoseparate portions at step 56. The encoding step 54 is optional, butadvantageously allows the original message to be recreated in aretrieving device even if all of the message portions are not receivedat the retrieving device.

The data structure is then created with steps 58, 60 and 62. Eachmessage portion forms the message payload 48 of a data structure 40. Atstep 58 a different sequence number 46 is added before each messagepayload for the same message. The sequence numbers 46 order the separatedata structures 40 in a manner corresponding to the order in which themessage portions therein should be recombined to recover the originalmessage. At step 60, the ID 44 is added before the sequence number 46.The ID 44 is the same for data structures of the same message. At step62, the target area header 42 is added before the ID 44. The target areaheader 42 is the same for data structures 40 of the same message. Thetarget area header comprises location information, identifying a targetarea, that has been input at step 52. In one embodiment, the user entersthe location information via the MM1 28. In another embodiment, thelocation information is based upon the position of the device only orthe position of the device and a user input. The position of the deviceis for example determined by the GPS receiver 26.

Each data structure 40 of the message is then optionally encrypted atstep 64 using the private key of the depositor and then optionallyencrypted at step 66 using the public key of the intended recipient ofthe message.

Each data structure is then transmitted at step 68. The data structuremay be included within the payload of a radio packet, such as aBluetooth radio packet, before transmission. The transmission step 68 ispreferably selective, in that the transmitter 22 is controlled byprocessor 20 to transmit to only radio transceiver devices which arewithin the target area for the message. For example, referring to FIG.1, if the target area was A1 and the depositing device is the mobileradio transceiver device 14, then the device 14 selectively communicateswithin the sub-network 4 and transfers the data structures to the mobileradio transceiver devices 10 and 12.

The processor 20 is capable of identifying which of its neighbouringmobile radio transceiver devices are within the target area by storinglocation dependent addresses for the devices. For example, the network 2may identify the participating radio transceiver devices using locationdependent IP addresses. The IP address comprises a prefix, such as thesite-local unicast address (1111111011) in IPv6, a, location identifier(x bits), and a stateless address (118-x bits). The location identifiermay be a GPS position which is 80 bits.

The deposition of a public, location dependent message is illustrated inFIG. 4 b. In the following description, the steps occur within theprocessor 20 unless otherwise indicated. The message is input at step 50as described with reference to FIG. 4 a. The redundant encoding step 54is omitted. The data structure is then created with steps 58 and 62 asdescribed with reference to FIG. 4 a. Step 60 is omitted. The datastructures are then transmitted at step 68 as described with referenceto FIG. 4 a.

The retrieval of a location dependent message is initiated by a mobileradio transceiver device, for example device 16 of FIG. 1, whichparticipates in the network 2 broadcasting a request. The request isreceived by the other mobile radio transceiver devices 10, 12, 14participating in the network 2. The request may have a different formatdepending upon whether it is intended to retrieve a private message or apublic message. If a public message is to be retrieved, the requestidentifies the requesting radio transceiver device so that the requisitedata structures can be transmitted to it. If a private message is to beretrieved, the request identifies the requesting radio transceiverdevice and the ID of the data structure to be retrieved.

The retrieving device 16 receives the data structures transmitted inresponse to the request and stores them in the memory 30. Itadditionally monitors the sequence numbers and systematically increasesthe broadcast range of the transmitted request until either it hasreceived all of the data structures of the message or it is no longerreceiving any data structures for that message.

The retrieving device 16 decrypts the retrieved data structures, ifnecessary, using its private key, then the depositor's public key. Themessage portions within the message payloads 48 of the data structuresare concatenated in the order defined by the data structures' sequencenumbers. The concatenated message portions either are the recoveredmessage or they are decoded (reverse of redundant encoding) to recoverthe original message. The message is then stored in the memory 30 fromwhere it can be read for out to a user via the MMI 28.

A mobile radio transceiver device 10 is operable as part of adistributed database that stores the data structures formed from amessage. The mobile device 10 stores one or more data structures in itsmemory 30. Each stored data structure 40 comprises a target area header42 that identifies a target area within which that data structure 40should be stored. While the device 10 remains within the target area ofa data structure stored in its memory 30, it hosts that data structureby retaining it in its memory. However, when the mobile device 10 movesoutside the target area of a data structure stored in the memory 30, ittransfers that data structure to a radio transceiver device that iswithin the area. The processor 20 receives current position data fromthe GPS receiver 26 (or some similar positioning circuitry). It comparesthe current position data with the target areas identified by the targetarea headers 42 of the data structures 40 stored in memory 30. If thecurrent position of the device 10 is outside the target area identifiedby a data structure, that data structure 40 is prepared fortransmission. It is removed from the memory 30 and placed in the payloadof a packet, which is transmitted to a selected radio transceiverdevice. The radio transceiver may be selected because it is positionedwithin the area identified by the target area header 42 of the datastructure 40 to be transferred. The radio transceiver may be selectedbecause there is no neighbouring radio transceiver device within thetarget area, but it is the nearest device to the target area

The processor 20 is capable of identifying which of its neighbouringradio transceiver devices are within the target area by storing locationdependent addresses for the devices. For example, the network 2 mayidentify the participating radio transceiver devices using locationdependent IP addresses. The IP address comprises a prefix, such as thesite-local unicast address (1111111011) in IPv6, a, location identifier(x bits), and a stateless address (118-x bits). The location identifiermay be a GPS position which is 80 bits.

A mobile radio transceiver device 10, operable as part of a distributeddatabase, is capable of receiving data structures via the radiofrequency receiver 24 which were transmitted by a depositing mobileradio transceiver device and storing them in the memory 30. A mobileradio transceiver device 10, operable as part of a distributed database,is capable of responding to a request received via the radio frequencyreceiver 24 from a retrieving mobile radio transceiver device totransfer the requested data structures from its memory 30 to theretrieving mobile radio transceiver device.

According to one embodiment, requested data structures will only betransferred to a retrieving radio transceiver device that is locatedwithin the target area identified by the data structures.

The mobile radio transceiver devices may have other uses. They may forexample be mobile phones or personal digital assistants which have somemechanism for forming an ad-hoc network (e.g. Bluetooth enabled) andhave some mechanism for determining their position (e.g. GPS enabled).

Although embodiments of the present invention have been described in thepreceding paragraphs with reference to various examples, it should beappreciated that modifications to the examples given can be made withoutdeparting from the spirit and scope of the invention.

1-37. (canceled)
 38. A device for hosting a data structure comprising aportion of a message and an information portion identifying an areawhile the device remains within that area, comprising: a memory forstoring a data structure comprising a message portion and an informationportion, wherein the information portion identifies an area; positioningmeans for determining the location of the device; and a transmittercontrollable to transmit the data structure to another device when theposition means indicates that the device is no longer located within thearea.